Modern vehicles typically are equipped with an on-board computer system or diagnostic system including one or more computer control modules controlling various functions of the vehicle. The terms on-board computer system and diagnostic system are used interchangeably throughout this disclosure. Some examples include powertrain control module (PCM), engine control module (ECM), a transmission control module (TCM), anti-locking brake system (ABS), and an air bag control module (collectively “electronic control modules (ECUs)”). The on-board computers often have self-diagnostic capability. When a problem is found, a diagnostic trouble code (DTC) is set within the computer's memory. DTCs are as general or as specific as the manufacturer desires.
One type of on-board computer system complies with an industry standard called On-Board Diagnostic II (OBD II). OBD II monitors all engine and drive train sensors and actuators for shorts, open circuits, lazy sensors and out-of-range values as well as values that do not logically fit with other powertrain data. Thus, OBD II keeps track of all of the components responsible for emissions and when one of them malfunctions, it signals the vehicle owner by illuminating a Maintenance Indicator Lamp (MIL), such as a check engine indicator. It also stores DTCs designed to help a technician find and repair the emission related problems.
Other types of on-board computer systems may employ communication protocols different from OBD II, such as different types of communication standards defined by different organizations or proprietary communication protocols defined by makers of ECUs. For instance, while OBD II are common on passenger vehicles, heavy duty vehicles often use a communication protocol different from OBD II, such as SAE J1708, SAE J1939, etc. Some OEM parts installed on a vehicle may include ECUs using a communication standard different from those already used on-board the vehicle. For instance, electronic braking, stability, suspension and transmission automation systems provided by WABCO Vehicle Control Systems utilize a communication protocol unique to WABCO systems.
To retrieve and decipher DTCs, an auto repair technician connects a scan tool to the vehicle's computer bus system via one or more connectors or data ports on-board the vehicle, to access and retrieve the DTCs, and to interface with vehicle diagnostic systems to retrieve information from the various control modules. Configurations of the connectors may be proprietary or comport to one or more industry standards. Different types of on-board computer systems may use different types of connectors or the same type of connector, to output diagnostic data. For instance, on-board computer systems comporting to SAE J1708 and SAE J1939 standards both use the same type of 9-pin or 6-pin Deutsch connector, while OBD II defines a unique OBD II connector for outputting data.
However, using a scan tool to download error code from a vehicle's diagnostic systems may be tedious and requires a lot of training and substantial knowledge about vehicles under test and specific types of on-board computer systems or ECUs used in different make and model of vehicles, and the underlying communication protocols needed to communicate with different types of on-board computer systems or ECUs. Before each scan, a technician needs to know what types of ECUs are installed on a vehicle under service and what types of communication protocols are used by the ECUs, such that correct types of software applications can be selected and launched on the scan tool to perform diagnoses, and correct commands can be issued to communicate with ECUs on-board the vehicle.
For instance, both SAE J1708 and SAE J1939 use the same type of Deutsch connector to output error code. For a vehicle with a Deutsch connector, a technician may not know exactly what the underlying communication protocol is being used and hence will have difficulties knowing what software applications are needed to properly communicate with the on-board computer and download error codes.
The technician also needs to be familiar with the structure of each software application so that he or she can properly locate the downloaded DTCs, which may be embedded under layers of menu selections.
Therefore, there is a need for a highly automated diagnostic tool, such as a scan tool, that can automatically identify the types of ECUs and/or communication protocols being used on a vehicle, and automatically select and launch corresponding software applications to communicate with the ECUs to retrieve error codes from the vehicle on-board computer.